The present invention relates to a control apparatus and a method for an internal combustion engine.
A typical internal combustion engine such as an automobile engine has a crank position sensor that outputs a crank signal every time the engine output shaft, or the crankshaft, rotates a predetermined crank angle, for example, 10° CA. Based on the crank signal from the crank position sensor, control processes for operating the engine such as a fuel injection control and an ignition timing control are executed every time the crankshaft rotates, for example, 30° CA.
When the fuel injection control and the ignition timing control are executed, a cylinder in which fuel injection and ignition should be executed must be distinguished. Accordingly, a process for distinguishing cylinders needs to be executed. To execute such a cylinder distinguishing control, a typical internal combustion engine is provided with a cam position sensor that outputs a cam signal every time a camshaft rotates predetermined degrees. The cylinder distinguishing control is executed based on the cam signal from the cam position sensor and the crank signal from the crank position sensor.
Such a cam signal is used for detecting the valve timing in a case where the engine is provided with a variable valve timing mechanism that varies the valve timing of engine valves. A variable valve timing mechanism changes the relative rotation phase between a camshaft and the crankshaft, thereby varying the valve timing of the engine valves. Based on a cam signal and a crank signal as described above, the relative rotational phase of the camshaft, or the current valve timing of the engine valves, is detected.
The output intervals of the cam signal from the cam position sensor are normally set longer than the output intervals of the crank signal. This is because the cam signal is used only for distinguishing the cylinders and detecting the relative rotational phase of the camshaft, and does not need to be outputted at a short interval such as 10° CA like the crank signal from the crank position sensor.
When there is an abnormality such as a broken wire in the crank position sensor, the control processes for controlling the operation of the engine such as the fuel injection control and the ignition timing control cannot be executed every 30° CA based on the crank signal from the crank position sensor. Such a problem can be avoided by providing two or more crank position sensors. That is, when one of the sensors malfunctions, the control processes are executed based on a normal crank signal outputted by another sensor. However, providing two or more crank position sensors is impractical since it increases costs and troubles.
Instead of the previous configuration, a configuration may be adopted in which, if a crank position sensor malfunctions, the control processes are executed based on the cam signal from the cam position sensor instead of the crank signal. That is, the already existing cam position sensor is used for executing the control processes when the crank position sensor malfunctions. Therefore, unlike the case in which an auxiliary crank position sensor is provided, costs and troubles are not increased.
However, the output intervals of the cam signal from the cam position sensor are longer than those of the crank signal from the crank position sensor. It is therefore necessary to take a countermeasure as described, for example, in Japanese Laid-Open Patent Publication No. 2000-104619. Specifically, during the period from an output of a cam signal to the subsequent output of the cam signal, pseudo execution timing for the control processes is generated, and the control processes are executed according to the pseudo execution timing. The pseudo execution timing is generated in the following manner. That is, after the cam signal is outputted at predetermined timing, a time interval at which the control processes should be executed (a time interval corresponding to 30° of crank angle) is computed based on the interval between the last output of the cam signal and the last output but one. The pseudo execution timing is generated every time the computed time interval elapses. In this manner, since the pseudo execution timing is generated and the control processes are executed according to the pseudo execution timing, so that the processes can be executed even in the period from an output of the cam signal to the subsequent output of the cam signal.
However, if the rotation speed of the crankshaft (camshaft) abruptly changes due to acceleration or deceleration of the engine during the period from an output of the cam signal to the subsequent output of the cam signal, the generated pseudo execution timing will be inappropriate. The pseudo execution timing is generated at an interval corresponding to 30° of crank angle, which is obtained based on the interval between the last output of the cam signal and the last output but one. When the rotation speed of the camshaft changes abruptly, the interval between the last output of the cam signal and the last output but one will be inappropriate for computing the interval corresponding to 30° of crank angle.
To cope with this problem, Japanese Laid-Open Patent Publication No. 2000-104619 proposes that the generated pseudo execution timing be corrected in accordance with the degree of acceleration and deceleration of the engine. However, the rotation speed of a camshaft changes in a number of manners according to the conditions. It is thus unlikely that the pseudo execution timing is maintained appropriate by the correction process shown above despite such various types of changes in the camshaft rotation speed.